package com.kfm.base.oop2;

public class Demo03 {

    public static void main(String[] args) {
        /*
         需求： 创建对象后必须对每个字段赋值
            包装类,java 中为每一个基本数据类型都设定了一个包装类。
            包装类是引用数据类型的，具备面向对象的特征. 默认值为 null
            包装类提供了很多对于基本数据类型的操作，比如：最大值、最小值、类型转换等

            byte     Byte
            short    Short
            int      Integer
            long     Long
            char     Character
            float    Float
            double   Double
            boolean  Boolean

            一般情况下，可以基本数据类型和其包装类交替使用。
            Java 在 1.4 之后提供了 自动装箱和自动拆箱 机制

            将 基本数据类型 自动转换为 其包装类， 称为 自动装箱
            将 包装类  自动转换为 基本数据类型， 称为 自动拆箱
         */
        Integer a = new Integer(10);
        String binaryString = Integer.toHexString(10);
        System.out.println(binaryString);

        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.MIN_VALUE);

        int max = Integer.max(1, 2);
        System.out.println(max);


        int b = 1;
        b += 10;

        // 包装类也能直接进行运算
        a += 10;
        a /= 10;

        System.out.println(a);

        // 自动拆箱
        int a1 = new Integer(2);
        // 自动装箱
        Integer b1 = 1;

//        Person p = new Person();
//        System.out.println(p.getAge());
//
//
//        Person p1 = new Person();
//        p1.setAge(0);
//        p1.setName(null);
//        System.out.println(p1.getAge());
//        System.out.println(p1.getName());
    }
}
